草庐IT

Web 应用

全部标签

google-app-engine - 如何管理我的谷歌应用引擎(使用 golang)的帐户?

我阅读了文档“UsingtheUsersService”并且它有效。但是我只想允许几个用户访问我的GAE,并限制其他用户。那么,我该如何管理我的谷歌应用引擎(使用golang)的用户帐户?我将使用“Google帐户”系统。我需要你的帮助。谢谢!祝你有个愉快的一天~ 最佳答案 我想你有两个选择:1.您可以只限制您的GoogleApp域的用户,进入管理>>应用程序设置>>身份验证类型。2.“appengine/user”pakage只是给你基本的功能。您可以使用它来检查当前用户的电子邮件是否在允许列表中。varallowed=[]str

gcc - 尝试使用 sqlite3 驱动程序运行 sql 应用程序时出现 "No such file or directory"错误

packagemainimport("fmt"_"github.com/mattn/go-sqlite3")funcmain(){DB,err:=sql.Open("sqlite3","/Users/MyUser/Documents/GOProj/test.db")iferr!=nil{fmt.Printf("Error:%s\n",err)}deferDB.Close()}每次我运行这段代码(使用SublimeText3,MacOSX10.9)我得到这个:execgcc:Nosuchfileordirectory/usr/local/go/pkg/tool/darwin_amd64/

google-app-engine - 目前在谷歌应用引擎中获得递增数字的最佳接受方式是什么?

我们有一个迁移到googleappengine的应用程序,所有者要求它继续使用递增数字或其近似值,即如果每个服务器有一个100左右的数字block来分发(分片)).是否有用于此的库,还是它仍然是您自己的库? 最佳答案 自己动手。但这是一个高度不可扩展的要求;在简单情况下(单例计数器数据存储实体),您每秒无法获得超过一个数字。如果您有100的回旋余地,则有一些解决方案,例如分片计数器分配器。 关于google-app-engine-目前在谷歌应用引擎中获得递增数字的最佳接受方式是什么?,我

当用户在 3 分钟内未向 Go Web 服务器发送数据时,Go session 超时

我将使用Go构建Web服务器。现在我想将sessionID返回给用户使用用户名和密码登录。而且我认为我可以接受登录程序。用户每次要发布数据时都会使用sessionID。但是,用户登录后,如果用户在3分钟内没有发送数据,我会尝试销毁session,使sessionid不再有效。那么,当用户在3分钟内未发布数据时,如何使session过期。(我将使用beego,beego有session超时,但它确实提到它会超时取决于发布数据间隔)谢谢。 最佳答案 您可以设置上次使用session的时间。假设cookie存储创建为Store:=sess

authentication - Web应用登录系统

我正在使用revel构建我的网络应用程序并尝试编写身份验证模块。我完成了注册部分,现在开始写签名部分。我在Thedefinitiveguidetoform-basedwebsiteauthentication上阅读了有关安全的部分并将使用此建议。我真正不知道的是,登录是如何工作的。我正在想象这个过程是这样工作的:用户将用户名和密码写入html表单并点击登录服务器接收请求,Controller将检查用户信息是否与数据库中的数据匹配。如果是,如何继续。第三点是我住的地方。但我知道它是如何工作的,但不确定是否是正确的方法。所以当登录信息与数据库匹配时,我会在session对象(哈希数据类型)

google-app-engine - 即使修改了 html 页面,应用程序引擎也返回 304

我有一个角度js应用程序,其主容器页面“index.html”在每个版本中都会更新。这是托管在我使用Go构建的应用程序引擎中。服务器端提供htmlView和静态内容的直接服务以及restfulAPI。在我推出新版本之前,一切都很好,然后我必须重新加载页面以避免出现304。我的app.yaml文件现在非常基础:handlers:-url:/.*script:_go_app我还没有设置任何缓存策略,所以我知道AppEngine会默认将静态文件缓存10分钟。发生了什么事? 最佳答案 我相信我已经找到了答案。有两件事困扰着我:首先,我知道我

google-app-engine - 如何在 App Engine/Heroku 中以 worker 身份运行非 Web Go 应用程序

我有一个由golang编写的网络应用程序。还有一个独立的数据提取器作为独立应用程序单独运行,以收集数据并将其存储在数据库/数据存储中。如何在托管环境中以工作人员的身份运行此数据getter,例如应用引擎/Heroku 最佳答案 在应用引擎中,您可以将加载器重构为一个或多个任务。例如https://github.com/mjibson/goread/blob/master/tasks.go和https://github.com/mjibson/goread/blob/master/app/queue.yaml使用任务从RSS提要更新数

web-services - 在生产环境中部署 Go/Golang REST Web API

我正在为移动应用程序编写后端网络API。它应该支持HTTPS。我在.NET方面的大部分经验,但对于这个我想使用Go/Golang。我已经准备好示例服务,现在我需要确保它已准备好投入生产。在.NET中,我将只使用IIS,但我不知道什么是Go的好方法。我应该将nginx作为反向代理,还是最好使用FastCGI?以及如何确保我的go应用程序启动并在系统重启时运行?我应该使用upstart还是类似的东西? 最佳答案 我一直在将NginxFastCGI与Go网络服务一起使用-它们可以很好地协同工作。它的设置并不比HTTP反向代理难-除了必须学

unit-testing - Go 应用程序在测试包含锁的函数时挂起

这是我编写的一个函数,用于将请求添加到请求队列:func(self*RequestQueue)addRequest(request*Request){self.requestLock.Lock()self.queue[request.NormalizedUrl()]=request.ResponseChannelself.requestLock.Unlock()}这是它的测试之一:funcTestAddRequest(t*testing.T){before:=len(rq.queue)r:=SampleRequests(1)[0]rq.addRequest(&r)if(len(rq.q

java - 防止服务器在客户端(golang)服务器(Java)应用程序中终止

我有一个简单的Java回显服务器:intportNumber=4444;try(ServerSocketserverSocket=newServerSocket(Integer.parseInt(args[0]));SocketclientSocket=serverSocket.accept();PrintWriterout=newPrintWriter(clientSocket.getOutputStream(),true);BufferedReaderin=newBufferedReader(newInputStreamReader(clientSocket.getInputStr